package com.javaspeak.designpatterns.go4.behavioural.state;

/**
 * The StateContext object ApplicationState implements this method.
 *
 * @author John Dickerson
 */
public interface StateContext {

    void changeState( AbstractAccountState newState );

    int getSalary();
    void setSalary( int salary );

    float getBalance();
    void setBalance( float balance );

    int getOverdraft();

    String getAccountName();
}
